1. Field of the Invention
The present invention relates generally to a data processing system. Specifically, the present invention provides a method, an apparatus and a computer program product for the dynamic creation and hierarchical organization of trusted platform modules.
2. Description of the Related Art
The Trusted Computing Group has defined the functionality and protocol for a hardware module called the Trusted Platform Module (TPM). This piece of hardware offers security and cryptographic functionality to computer systems such as, for example, asymmetric key generation, decryption, encryption, signing, sealing and binding of data to the state of the TPM, migration of keys between TPMs, random number generation and hashing functionality. A TPM also implements a rather complex state machine which allows some of its operations to only be performed when a sequence of certain commands has been sent to the TPM before. One example of this is that a TPM owner can only be set if an endorsement key has been created previously.
Many hardware vendors ship their computing systems equipped with a TPM soldered to the motherboard, which allows widespread usage of the TPM by operating systems such as Linux® or Windows®. It is expected that future versions of the Windows® operating system will support trusted computing with the TPM, and use it, for example, for securely booting a system.
The interest in support for trusted computing on virtualizeable systems is growing as hardware virtualization becomes available for more hardware. Being able to run multiple operating systems on one machine will not remain an area only for high-end servers but will become widely available soon. Also, there are already several hypervisors in use today that were built for hardware that has been virtualizeable for many years. A hypervisor is a layer of software running on a platform that allows multiple instances of operating systems. Trusted computing is of interest for building operating system architectures and improving their security. Currently, TPMs are not available for virtualizeable platforms.